$(function(){
    layui.use('form', function () {

        $.ajax({
            url: 'http://localhost:8080/subject/selectLevelNameByDistinct',
            type: 'get',
            success: function (vo) {
                if (vo.code == 200) {
                    $.each(vo.data, function (i, s) {
                        $("#levelName").append("<option value='" + s.levelName + "'>" + s.levelName + "</option>");
                    });
                }
                layui.form.render();
            }
        });

    });
});

layui.use(['table', 'jquery','form','layer'], function () {
    //使用layui的table模块来操作表格
    let table = layui.table;
    //使用layui的jquery模块
    let $ = layui.$;
    let form=layui.form;
    let layer=layui.layer;



    //当页面加载就需要渲染表格数据
    table.render({
        elem: '#demo',   //引用表格的ID
        id: 'examPaperTable', //这个id是render的id，可以用于表格reload时引用
        url: 'http://localhost:8080/examPaper/queryByTerm',  // 请求地址
        method: 'get',
        toolbar: '#searchToolBar',   //设置toolbar
        page: true,  //启用表格分页功能
        cols: [[     //表头
            { field: 'examPaperId', title: 'Id', sort: true},
            { field: 'levelName', title: '年级' },
            { field: 'subjectName', title: '学科' },
            { field: 'examPaperName', title: '试卷名称' ,
                templet:function(res){
                    return "《"+res.examPaperName+"》";
                }
            },
            { field: 'paperType', title: '试卷类型' ,
                templet:function(res){
                    if(res.paperType==1){
                        return "固定试卷";
                    }else if(res.paperType==2){
                        return "时段试卷";
                    }else if(res.paperType==3){
                        return "班级试卷";
                    }
                    
                }
            },
            { field: 'paperScore', title: '试卷总分' },
            { field: 'questionCount', title: '题目总数', sort: true },
            { field: 'createTime', title: '创建时间', sort: true },
            {fixed: 'right', title:'操作', toolbar: '#handleDemo', width:150}
        ]]
    });
    // 解决表格在排序之后没有重新渲染问题
    table.on('sort(examPaperList)', function (obj) {
        table.reload('examPaperTable', {
            initSort: obj
        });
    });
    table.reload('examPaperTable', {});



    //绑定表格的toolbar事件（监听头部工具栏）
    table.on('toolbar(examPaperList)', function (obj) {
        //获取按钮对象lay-event属性值
        let event = obj.event;

        switch (event) {
            //在不同的case中做不同的按钮事件处理
            case 'search':
                //重载表格加载新的数据, 引用render的id
                table.reload('examPaperTable', {
                    method: 'get',
                    where: {
                        examPaperName: $('#examPaperName').val(),
                        paperType: $('#paperType').val(),
                        levelName: $('#levelName').val(),
                        subjectName: $('#subjectName').val()
                    },
                    page: {
                        curr: 1  //查询回来后默认显示在第一页
                    }
                });
                // 重新查询年级
                $.ajax({
                    url: 'http://localhost:8080/subject/selectLevelNameByDistinct',
                    type: 'get',
                    success: function (vo) {
                        if (vo.code == 200) {
                            $.each(vo.data, function (i, s) {
                                $("#levelName").append("<option value='" + s.levelName + "'>" + s.levelName + "</option>");
                            });
                        }
                        layui.form.render();
                    }
                });
        }

    });

    // 监听行工具事件
    table.on('tool(examPaperList)',function(obj){
        //获取按钮对象lay-event属性值
        let event = obj.event;
        
        switch (event) {
            //在不同的case中做不同的按钮事件处理
            case 'del':
                layer.confirm('真的删除此行数据么', function(index){
                    $.ajax({
                        url:'http://localhost:8080/examPaper/update',
                        type:'post',
                        data:{examPaperId:obj.data.examPaperId,status:2},
                        success:function(vo){
                            if(vo.code==200){
                                obj.del();
                                layer.close(index);
                            }else{
                                layer.close(index);
                                layer.msg("删除失败", { offset: 't', icon: 2 });
                            }
                        }
                    });
                });
            break;
            case 'edit':
                layer.msg("敬请期待");
            break;
            case 'view':
                let examPaper=obj.data;
                sessionStorage.setItem("examPaperView2",JSON.stringify(examPaper));
                xadmin.open('试卷查看','exam_paper_view.html');
            break;

        }

    });



    // 年级名称下拉列表框监视
    form.on('select(levelName)', function (data) {
        //console.log(data.value); 得到被选中的值

        $("#subjectName option").each(function (i) {
            if (i != 0) {
                $(this).remove();
            }
        })
        form.render();
        if (data.value == "") {
            reture;
        }

        $.ajax({
            url: 'http://localhost:8080/subject/selectByMore',
            type: 'get',
            data: { levelName: data.value },
            success: function (vo) {
                if (vo.code == 200) {
                    $.each(vo.data, function (i, s) {
                        $("#subjectName").append("<option value='" + s.subjectName + "'>" + s.subjectName + "</option>");
                    });
                    form.render();
                }
            }
        });
    });


});